<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <script>
    /* 
      对象中的方法现在可以使用这种方法简写
      var obj = {
        方法名 () {

        }
      }


      var a = 1
      var obj = {
        a: a
      }
      
      如果对象的属性值为一个变量，同时该属性名和变量名相同，那么我们可以直接写属性名即可

      上面可改为
      var obj = {
        a
      }

      在对象的属性名上，我们可以使用表达式，表达式需要放在[]中



     */
    /* var obj = {
      a: 1,
      fn: function () {
        
      }
    } */
    var [a, b, c, d, e, f, g] = [1, 2, 3, 4, 5, 6, 7]

    var obj = {
      a, b, c, d, e, f, g,
      fn () {
        console.log("调用成功")
      }
    }
    
    obj.fn()

    var objName = 'name'
    var obj2 = {
      [objName]: 1,
      ['name' + 2]: 2
    }
  console.log(obj2)
    
    /* 
      某对象有以下属性
    */
    var name1 = 'DEMO_NAME1'
    var name2 = 'DEMO_NAME2'
    var name3 = 'DEMO_NAME3'
    var name4 = 'DEMO_NAME4'
    var name5 = 'DEMO_NAME5'
    

    var obj3 = {
      [name1] () {},
      [name2] () {},
      [name3] () {},
      [name4] () {},
      [name5] () {}
    }

  </script>
</body>
</html>